Aircraft flight simulators provide an alternative for pilot training to the use of aircraft, the use of which may, at times, be inconvenient, uneconomical and/or dangerous. Obviously, the validity of such training is in direct relation to the degree to which an aircraft flight simulator reflects the respective aircraft including the interior of the cockpit, the response of the controls and, of course, the view from the window.
Simulation of the view from the window of an aircraft is provided by a system which is referred to as a modular digital image generator (DIG). The generator employs a high volume memory (such as is provided by a disk storage unit), a geometric processor which includes a high speed memory (analogous to a computer cashe type memory), a video processor which includes a pair of memories, and a display. Stored in the high volume memory is a data base the element of which define the terrain (including natural formations and cultural structures) of the simulation (gaming) area. More specifically, the terrain is modeled by polygon surfaces (faces). For each polygon surface the data base includes, as elements, the coordinates of the vertices defining the surface, the surface normal vector (both in a reference (earth) coordinate system) and tonal parameters.
From the high volume memory, those elements of the data base which define the terrain within the visibility range of the simulated aircraft location are transferred to the high speed memory to maintain therein an active data base. Acting upon the elements in the high speed memory, the geometric processor transforms each vertex of each surface visible to the pilot from the (three-dimensional) reference (earth) coordinate system to a pilot's eye (Z) coordinate system. Then, by means of perspective division, each transformed vertex is projected onto a (two-dimensional) window (screen) coordinate system. Finally, associated projected vertices are interconnected to define projected polygon surface edges. From each surface normal vector, respective tonal data and the simulated sun position, the geometric processor also calculates shading and fading parameters for each projected surface. With the edges, the shading and fading parameters for each projected surface are transmitted to the video processor.
From the list of edges and shading and fading parameters, the video processor develops intensities for each projected surface, picture element by picture element (pixel), the elements being stored in respective locations of one of the two video processor memories. While one of the video processor memories is being filled, the intensities stored in the other memory are retrieved (double buffered) and transmitted to the display.
The display converts the transmitted intensities into an image. The image is "painted" in a raster format in which a series of picture elements (pixels) forms a line, a series of parallel lines forms an image field and a pair of successive fields forms an image frame, the lines of alternated fields being interlaced.
Unfortunately, the images generated by the above mentioned modular digital image generator lack texture (non-uniformity in color and intensity on surfaces). It has been found that untextured surfaces deprive pilots of important motion and distance cues. While it is possible to add more detail with polygons (edges), it has been found to be impractical being much too hardware expensive.
For additional information regarding the above mentioned modular digital image generator the reader is referred to the U.S. patent application Ser. No. 394,229, filed on July 1, 1982 by Johnson K. Yan and Judit K. Florence.
A digital image generator for generating images having texture is disclosed by M. Bolton in the U.S. Pat. No. 4,343,037. In generating the images, the generator calculates the X and Y earth surface coordinates for the point which corresponds to each pixel (picture element) of the image. Each pair of X and Y coordinates is used as an address to retrieve a pre-stored texture modulation intensity for the pixel from a texture table. To avoid aliasing, the intensities stored in the table have been pre-filtered. To select an intensity having an appropriate level of detail (degree of filtering), the distance between the earth surface points calculated for the current and previous pixels is computed for use with the X and Y coordinates in addressing the table.
Unfortunately, the quality of the images generated by the digital image generator disclosed by M. Bolton is limited by the earth surface coordinate and detail level calculations. Additionally, the quality of the images is limited because the generator does not employ means for adjacent level blending and means for (far) texture intensity interpolation. Finally, the texture of the images generated appears repetitious unless a relatively large texture table is used.
The reader may find of interest the U.S. Pat. Nos. 4,154,766 disclosed by Osofsky, et al., 4,179,824 disclosed by D. Marsh and 4,213,254 disclosed by Sullivan, et al. Disclosed in the later three patents are sytems which paint objects a face at a time by means of a "mini-raster". Each of the systems include means (in the later two patents provided by a "texture" stage) for selecting one of a limited number of mini-raster line densities (resolutions) and beamwidths (focus). The later patent also includes a pattern generator by means of which certain regular polygons may be repeated to conserve memory.